home *** CD-ROM | disk | FTP | other *** search
- Path: mail2news.demon.co.uk!tsys.demon.co.uk
- From: Tom Wheeley <tomw@tsys.demon.co.uk>
- Newsgroups: comp.lang.eiffel,comp.lang.c,comp.lang.c++,comp.object,comp.software-eng
- Subject: Re: Beware of "C" Hackers -- A rebuttal to Bertrand Meyer
- Date: Mon, 25 Mar 96 14:51:24 GMT
- Organization: City Zen FM
- Message-ID: <827765484snz@tsys.demon.co.uk>
- References: <1995Jul3.034108.4193@rcmcon.com> <31545B86.4CC0@iadfw.net> <4j26cn$gh7@solutions.solon.com> <3154A548.71FF@iadfw.net> <4j3p80INN567@keats.ugrad.cs.ubc.ca>
- Reply-To: tomw@tsys.demon.co.uk
- X-NNTP-Posting-Host: tsys.demon.co.uk
- X-Newsreader: Demon Internet Simple News v1.30
- X-Sig-By: Tomsystems Quote v1.2. (c)1996 Tom Wheeley, tomw@tsys.demon.co.uk
- X-Mail2News-Path: tsys.demon.co.uk
-
- In article <4j3p80INN567@keats.ugrad.cs.ubc.ca>
- c2a192@ugrad.cs.ubc.ca "Kazimir Kylheku" writes:
-
- > >interfacing with a file system, or manipluating strings, etc. I didn't
- > >think of the library as a formal part of the C language. Now, of course
- >
- > Neither does the K&R2: this I think is a major flaw in the otherwise great
- > book. It never makes clear the concept that the standard library is a component
- > of the language. In fact, it claims the opposite:
- >
- > The standard library is not part of the C language proper, but an
- > environment that supports standard C will provide the function
- > declarations and type and macro definitions of this library.
- > (beginning of Appendix B).
- >
- > Not at all; that's the beauty of it! All of the standard library functions can
- > be implemented by essentially adding a compatible library and headers to a
- > ``freestanding'' implementation. The standard doesn't _require_ that you inline
- > any of the functions or that the compiler be aware of special semantics, but
- > the implementor has the freedom to do this. This is why the inclusion of
- > appropriate headers is still required when you use standard functions---for
- > example, you must include <stdlib.h> to call malloc(), or <stdio.h> to use
- > printf(). If the compiler were really required to know malloc or printf a
- > priori, the need for a header file could easily have been dropped long ago.
-
- Surely you have just proved that the standard library is _not_ part of the
- C language. At the risk of seeming -pedantic, I would say that the standard
- library is a part of the _standard C *implementation*_, but not a part of
- the standard C *language*.
-
- That is why you can build the standard library within C -- you cannot write
- the entire standard library using the standard library, therefore if the
- standard library is a part of the C language, then the standard library is
- no longer written in the C language, but only a limited subset thereof.
-
- I hope you understood that, I half expected to end up mentioning an index of
- everything that is not indexed... ;-)
-
- .splitbung
- --
- * TQ 1.0 * The 'Just So Quotes'.
- Artificial Intelligence: the art of making computers that behave like the
- ones in movies.
- -- Bill Bulko
-